home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Hacks / Hacks ’96 / Booting Gallery / Booting Gallery (source) / (Libraries) / Fluent Libraries / Utils / CriticalTask.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-06-22  |  674 b   |  46 lines  |  [TEXT/BROW]

  1. #ifndef __CriticalTask_H__
  2. #define __CriticalTask_H__
  3.  
  4. /***
  5.  *     Created by Bill Hubauer on Mon, Jan 29, 1996 @ 11:49 AM.
  6.  *
  7.  ***/
  8.  
  9. #ifndef __DeferredTask_H__
  10. #include "DeferredTask.h"
  11. #endif
  12.  
  13. #include "TimeTask.h"
  14.  
  15. class TCriticalTaskHelper : public MTimeTask
  16. {
  17. public:
  18.     TCriticalTaskHelper(MDeferredTask* task);
  19.     virtual ~TCriticalTaskHelper();
  20.     
  21.     enum { kRetryTime = 300};        // 100 milliseconds??
  22.     
  23.     virtual void DoTask();
  24.     
  25. protected:
  26.     MDeferredTask*        fTask;
  27. };
  28.  
  29.  
  30. class MCriticalTask : public MDeferredTask
  31. {
  32. public:
  33.     MCriticalTask() : fHelper(this){}
  34.     virtual ~MCriticalTask() {}
  35.     
  36.     Boolean        SafeToDoTaskQ();
  37.     
  38.     
  39. protected:
  40.     TCriticalTaskHelper        fHelper;
  41. };
  42.  
  43.  
  44.  
  45. #endif
  46.